/**
 * Alipay.com Inc.
 * Copyright (c) 2004-2013 All Rights Reserved.
 */
package com.pingan.mobilegw.core.model.enums;

import com.alibaba.common.lang.StringUtil;

/**
 * 服务控制
 * 
 * @author jiadao
 * @version $Id: ControlKey.java, v 0.1 2013-4-8 上午10:49:45 jiadao Exp $
 */
public enum ControlKey {

    /** 是否需要etag缓存功能 */
    NEED_ETAG("needETag"),

    /** 服务超时 */
    TIME_OUT("timeout"),

    /** 是否需要登录 */
    NEED_LOGIN("needLogin"),

    /** 是否需要商户APP鉴权 */
    NEED_MAPP_AUTH("needMappAuth"),

    ;

    private final String key;

    /**
     * @param key
     */
    private ControlKey(String key) {
        this.key = key;
    }

    /**
     * Getter method for property <tt>key</tt>.
     * 
     * @return property value of key
     */
    public String getKey() {
        return key;
    }

    /**
     * 通过key获取控制条款
     * 
     * @param key
     * @return
     */
    public static ControlKey getByKey(String key) {
        for (ControlKey controlKey : values()) {
            if (StringUtil.equals(key, controlKey.getKey())) {
                return controlKey;
            }
        }
        return null;
    }

}
